<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>箭头函数</title>
</head>

<body>
    <p>箭头函数是一种声明函数的简洁语法，它与普通函数并无本质的区别，差异性更多体现在语法格式上。</p>
    <p>
        总结：<br>
        1. 箭头函数属于表达式函数，因此不存在函数提升 <br>
        2. 箭头函数只有一个参数时可以省略圆括号 () <br>
        3. 箭头函数函数体只有一行代码时可以省略花括号 {}，并自动做为返回值被返回

    </p>
    <p>箭头函数中没有 arguments，只能使用 ... 动态获取实参</p>

    <script>
        const fn0 = function () {
            console.log(123)
        }
        // 1. 箭头函数 基本语法
        const fn = () => {
            console.log(123)
        }
        fn()
        const fn1 = (x) => {
            console.log(x)
        }
        fn1(1)
        // 2. 只有一个形参的时候，可以省略小括号
        const fn2 = x => {
            console.log(x)
        }
        fn(1)
        // // 3. 只有一行代码的时候，我们可以省略大括号
        const fn3 = x => console.log(x)
        fn3(1)
        // 4. 只有一行代码的时候，可以省略return
        const fn4 = x => x + x
        console.log(fn4(1))
        // 5. 箭头函数可以直接返回一个对象
        const fn5 = (uname) => ({ uname: uname })
        console.log(fn5('刘德华'))

    </script>
</body>

</html>